#ifndef SURFACE_H_
#define SURFACE_H_

#include "GLObject.h"

class Surface : public GLObject {
private:
	float widthX;
	float widthY;

	float* positionData;
	unsigned int* indexData;
	float* normalData;
	float* textureData;

	int positionSize;
	int indexSize;

	void render(glm::mat4 viewMatrix, glm::mat4 modelMatrix);

	void createSurface(const float radius, float width, float height, const unsigned int vertexCant);

public:
	Surface(GLuint programHandler, GLShaderConfig shaderConfig, float widthX, float widthY);
	void update(glm::mat4 viewMatrix, glm::mat4 modelMatrix);
	~Surface();
};

#endif /* SURFACE_H_ */
